package xymt.novaway.system.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import xymt.novaway.common.tenant.core.TenantEntity;

/**
 * 角色数据权限配置表 sys_role_data_scope_config
 *
 * @author NovaWay
 */
@Data
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@TableName("sys_role_data_scope_config")
public class SysRoleDataScopeConfig extends TenantEntity {

    /**
     * 主键ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 角色ID
     */
    private Long roleId;

    /**
     * 菜单ID（绑定具体界面）
     */
    private Long menuId;

    /**
     * 接口权限标识（如system:order:list）
     */
    private String permission;

    /**
     * 数据表名
     */
    private String tableName;

    /**
     * 过滤字段名（如status、type、user_id等）
     */
    private String filterField;

    /**
     * 允许的字段值（JSON格式存储）
     */
    private String filterValues;

    /**
     * 过滤类型（IN、EQ、LIKE、BETWEEN等）
     */
    private String filterType;

    /**
     * 启用状态（0启用 1禁用）
     */
    private String enableStatus;

    /**
     * 备注说明
     */
    private String remark;

}